/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package byblos.negocio.tela;

import byblos.negocio.Idioma;
import byblos.negocio.NegocioExcecao;
import byblos.persistencia.DAO;

/**
 *
 * @author Diego
 */
public class FabricaTela {

    public static Tela getTela(TipoTela tipo, Idioma idioma, Integer id) {
        Tela tela;
        if (id == null) {
            tela = new DAO().localizar(Tela.class, "TelaPorTipoIdioma", tipo, idioma);
            if (tela == null) {
                tela = Tela.criarTela(tipo, idioma);
                new DAO().salvar(tela);
            }
        } else {
            tela = new DAO().localizar(Tela.class, id);
//            if (tela.getTipoTela() == TipoTela.HOME) {
//                tela.setGaleria(new DAO().localizar(GaleriaHome.class, tela.getGaleria().getId()));
//            }
        }
//        if (tela.getTipoTela() == TipoTela.HOME && tela.getGaleria() == null) {
//            tela.setGaleria(new GaleriaHome());
//        }
        if (tela == null) {
            throw new NegocioExcecao("Não foi possível localizar a tela " + tipo);
        }
        return tela;
    }
}
